﻿// This class is "generated" and will be overwritten.
// Your customizations should be made in TaskRecord.cs

using System;
using System.Collections;
using System.Data.SqlTypes;
using BaseClasses;
using BaseClasses.Data;
using BaseClasses.Data.SqlProvider;

namespace BUGLOG.Business
{

/// <summary>
/// The generated superclass for the <see cref="TaskRecord"></see> class.
/// </summary>
/// <remarks>
/// This class is not intended to be instantiated directly.  To obtain an instance of this class, 
/// use the methods of the <see cref="TaskTable"></see> class.
/// </remarks>
/// <seealso cref="TaskTable"></seealso>
/// <seealso cref="TaskRecord"></seealso>
public class BaseTaskRecord : PrimaryKeyRecord
{

	public readonly static TaskTable TableUtils = TaskTable.Instance;

	// Constructors
 
	protected BaseTaskRecord() : base(TableUtils)
	{
	}

	protected BaseTaskRecord(PrimaryKeyRecord record) : base(record, TableUtils)
	{
	}







#region "Convenience methods to get/set values of fields"

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskID field.
	/// </summary>
	public ColumnValue GetTaskIDValue()
	{
		return this.GetValue(TableUtils.TaskIDColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskID field.
	/// </summary>
	public Int32 GetTaskIDFieldValue()
	{
		return this.GetValue(TableUtils.TaskIDColumn).ToInt32();
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskName field.
	/// </summary>
	public ColumnValue GetTaskNameValue()
	{
		return this.GetValue(TableUtils.TaskNameColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskName field.
	/// </summary>
	public string GetTaskNameFieldValue()
	{
		return this.GetValue(TableUtils.TaskNameColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskName field.
	/// </summary>
	public void SetTaskNameFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.TaskNameColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskName field.
	/// </summary>
	public void SetTaskNameFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.TaskNameColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskDscription field.
	/// </summary>
	public ColumnValue GetTaskDscriptionValue()
	{
		return this.GetValue(TableUtils.TaskDscriptionColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.TaskDscription field.
	/// </summary>
	public string GetTaskDscriptionFieldValue()
	{
		return this.GetValue(TableUtils.TaskDscriptionColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskDscription field.
	/// </summary>
	public void SetTaskDscriptionFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.TaskDscriptionColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskDscription field.
	/// </summary>
	public void SetTaskDscriptionFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.TaskDscriptionColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.StartedDate field.
	/// </summary>
	public ColumnValue GetStartedDateValue()
	{
		return this.GetValue(TableUtils.StartedDateColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.StartedDate field.
	/// </summary>
	public DateTime GetStartedDateFieldValue()
	{
		return this.GetValue(TableUtils.StartedDateColumn).ToDateTime();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.StartedDate field.
	/// </summary>
	public void SetStartedDateFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.StartedDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.StartedDate field.
	/// </summary>
	public void SetStartedDateFieldValue(string val)
	{
		this.SetString(val, TableUtils.StartedDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.StartedDate field.
	/// </summary>
	public void SetStartedDateFieldValue(DateTime val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.StartedDateColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public ColumnValue GetExpectedEndDateValue()
	{
		return this.GetValue(TableUtils.ExpectedEndDateColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public DateTime GetExpectedEndDateFieldValue()
	{
		return this.GetValue(TableUtils.ExpectedEndDateColumn).ToDateTime();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public void SetExpectedEndDateFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.ExpectedEndDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public void SetExpectedEndDateFieldValue(string val)
	{
		this.SetString(val, TableUtils.ExpectedEndDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public void SetExpectedEndDateFieldValue(DateTime val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.ExpectedEndDateColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.Status field.
	/// </summary>
	public ColumnValue GetStatusValue()
	{
		return this.GetValue(TableUtils.StatusColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.Status field.
	/// </summary>
	public string GetStatusFieldValue()
	{
		return this.GetValue(TableUtils.StatusColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.Status field.
	/// </summary>
	public void SetStatusFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.StatusColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.Status field.
	/// </summary>
	public void SetStatusFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.StatusColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.UserID field.
	/// </summary>
	public ColumnValue GetUserId0Value()
	{
		return this.GetValue(TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Task_.UserID field.
	/// </summary>
	public Int32 GetUserId0FieldValue()
	{
		return this.GetValue(TableUtils.UserId0Column).ToInt32();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public void SetUserId0FieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public void SetUserId0FieldValue(string val)
	{
		this.SetString(val, TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public void SetUserId0FieldValue(double val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public void SetUserId0FieldValue(decimal val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public void SetUserId0FieldValue(long val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.UserId0Column);
	}


#endregion

#region "Convenience methods to get field names"

	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.TaskID field.
	/// </summary>
	public Int32 TaskID
	{
		get
		{
			return this.GetValue(TableUtils.TaskIDColumn).ToInt32();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.TaskIDColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool TaskIDSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.TaskIDColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskID field.
	/// </summary>
	public string TaskIDDefault
	{
		get
		{
			return TableUtils.TaskIDColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.TaskName field.
	/// </summary>
	public string TaskName
	{
		get
		{
			return this.GetValue(TableUtils.TaskNameColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.TaskNameColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool TaskNameSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.TaskNameColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskName field.
	/// </summary>
	public string TaskNameDefault
	{
		get
		{
			return TableUtils.TaskNameColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.TaskDscription field.
	/// </summary>
	public string TaskDscription
	{
		get
		{
			return this.GetValue(TableUtils.TaskDscriptionColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.TaskDscriptionColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool TaskDscriptionSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.TaskDscriptionColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.TaskDscription field.
	/// </summary>
	public string TaskDscriptionDefault
	{
		get
		{
			return TableUtils.TaskDscriptionColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.StartedDate field.
	/// </summary>
	public DateTime StartedDate
	{
		get
		{
			return this.GetValue(TableUtils.StartedDateColumn).ToDateTime();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.StartedDateColumn);
			
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool StartedDateSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.StartedDateColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.StartedDate field.
	/// </summary>
	public string StartedDateDefault
	{
		get
		{
			return TableUtils.StartedDateColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public DateTime ExpectedEndDate
	{
		get
		{
			return this.GetValue(TableUtils.ExpectedEndDateColumn).ToDateTime();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.ExpectedEndDateColumn);
			
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool ExpectedEndDateSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.ExpectedEndDateColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.ExpectedEndDate field.
	/// </summary>
	public string ExpectedEndDateDefault
	{
		get
		{
			return TableUtils.ExpectedEndDateColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.Status field.
	/// </summary>
	public string Status
	{
		get
		{
			return this.GetValue(TableUtils.StatusColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.StatusColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool StatusSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.StatusColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.Status field.
	/// </summary>
	public string StatusDefault
	{
		get
		{
			return TableUtils.StatusColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Task_.UserID field.
	/// </summary>
	public Int32 UserId0
	{
		get
		{
			return this.GetValue(TableUtils.UserId0Column).ToInt32();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.UserId0Column);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool UserId0Specified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.UserId0Column);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Task_.UserID field.
	/// </summary>
	public string UserId0Default
	{
		get
		{
			return TableUtils.UserId0Column.DefaultValue;
		}
	}


#endregion
}

}
